package com.ruoyi.system.mapper;

import java.util.List;
import com.ruoyi.system.domain.TOrder;
import com.ruoyi.system.domain.TOrderDetail;

/**
 * 订单管理Mapper接口
 * 
 * @author ruoyi
 * @date 2020-10-16
 */
public interface TOrderMapper 
{
    /**
     * 查询订单管理
     * 
     * @param orderId 订单管理ID
     * @return 订单管理
     */
    public TOrder selectTOrderById(Long orderId);

    /**
     * 查询订单管理列表
     * 
     * @param tOrder 订单管理
     * @return 订单管理集合
     */
    public List<TOrder> selectTOrderList(TOrder tOrder);

    /**
     * 新增订单管理
     * 
     * @param tOrder 订单管理
     * @return 结果
     */
    public int insertTOrder(TOrder tOrder);

    /**
     * 修改订单管理
     * 
     * @param tOrder 订单管理
     * @return 结果
     */
    public int updateTOrder(TOrder tOrder);

    /**
     * 删除订单管理
     * 
     * @param orderId 订单管理ID
     * @return 结果
     */
    public int deleteTOrderById(Long orderId);

    /**
     * 批量删除订单管理
     * 
     * @param orderIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteTOrderByIds(String[] orderIds);

    /**
     * 批量删除订单明细
     * 
     * @param customerIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteTOrderDetailByOrderIds(String[] orderIds);
    
    /**
     * 批量新增订单明细
     * 
     * @param tOrderDetailList 订单明细列表
     * @return 结果
     */
    public int batchTOrderDetail(List<TOrderDetail> tOrderDetailList);
    

    /**
     * 通过订单管理ID删除订单明细信息
     * 
     * @param roleId 角色ID
     * @return 结果
     */
    public int deleteTOrderDetailByOrderId(Long orderId);

    TOrder selectTOrderByOrderNo(String orderNo);

    Double selectTOrderListTotalSum(TOrder tOrder);


    /**
     * 查询订单管理,多个id
     *
     * @param ids 订单管理ID
     * @return 订单管理
     */
    public List<TOrder> selectTOrderByIds(List<Long>  ids);

}
